home *** CD-ROM | disk | FTP | other *** search
/ MacHack 1999 / MacHack 1999.toast / The Hacks / MACtive Desktop / Source / Headers / BaseWindowManager.h < prev    next >
Encoding:
C/C++ Source or Header  |  1997-07-30  |  1.1 KB  |  54 lines  |  [TEXT/CWIE]

  1. #ifndef _BASEWINDOWMANAGER_
  2. #define _BASEWINDOWMANAGER_
  3.  
  4. #ifndef _LLIST_
  5. #include "LList.h"
  6. #endif
  7.  
  8. #ifndef _WINDOW_
  9. #include "Window.h"
  10. #endif
  11.  
  12. #ifndef _WINDOWMANAGER_
  13. #include "WindowManager.h"
  14. #endif
  15.  
  16.  
  17.  
  18.  
  19.  
  20. typedef struct BaseWindowObject
  21. {
  22.     BaseWindowObject    *next;
  23.     WindowPtr            fWindowID;
  24.     Window                *fWindowObject;
  25. } BaseWindowObject;
  26.  
  27.  
  28. typedef class BaseWindowManager : public WindowManager
  29. {
  30. protected:
  31.     BaseWindowObject *GetWindowObject(WindowPtr window);
  32.     
  33. public:
  34.     LList<BaseWindowObject>        fWindowList;
  35.     Boolean                        fSuspended;
  36.     
  37.     BaseWindowManager(void);
  38.     
  39.     virtual void DoAddWindow(Window *window);
  40.     virtual void DoDeleteWindow(Window *window);
  41.     virtual void DoClick(Point where,UInt32 modifiers,WindowPtr window,SInt32 part);
  42.     virtual void DoIdleTime(EventRecord *event,Point mouse,UInt32 modifiers);
  43.     virtual void DoActivation(WindowPtr window,Boolean isActivating);
  44.     virtual void DoSuspendResume(EventRecord *event,Boolean isSuspend);
  45.     
  46.     virtual Window *DoGetFrontWindow(void);
  47.     virtual Window *DoGetNextWindow(Window *window);
  48.     virtual Window *DoGetWindow(WindowPtr window);
  49.     
  50. } BaseWindowManager;
  51.  
  52.  
  53. #endif /* _BASEWINDOWMANAGER_ */
  54.